The present invention relates to active networks generally and more particularly to push-pull functionalities and applications.
The degree to which the Internet facilitates people""s efforts in accomplishing their goals depends on how successful is their access to the wealth of information which is available. Internet browsers, such as Netscape or Internet Explorer, together with search engines such as those of Infoseek, Lycos, Yahoo or many other companies, enable the user to find his way through the complex manifold of universal resource locators (URL""s) which are all inter-connected. On account of the tremendous number of web sites, and the volume of information stored at a typical site, searches typically involve a great deal of timexe2x80x94especially for the novice. Download speed is one factor contributing to the overall time required to conclude a search, but another factor is the difficulty of navigating through the maze of sites and linking from site to site.
Push-pull functionalities are currently gaining acceptance in computer network environments to facilitate searching and reduce the time requirements thereof The upcoming version of Microsoft WINDOWS(copyright) (xe2x80x9cWindows 97xe2x80x9d, code named Memphis) includes an Active Desktop based on Microsoft ActiveX technology, and allows content developers and publishers to implement xe2x80x9cpushxe2x80x9d technology.
Currently users pull information from the Internet with a web browser by selecting the specific web pages they want to view, and rely on the browser to pull the information from a server onto the user""s desktop. This places full control over what information is being viewed in the hands of the user. Internet companies, such as PointCast and Marimba, are pioneering a new system based on push technology, in which a content developer or publisher decides what information a user will see and pushes that information from the server onto the user""s desktop without the need for the user to specifically make a request.
The xe2x80x9cactive desktopxe2x80x9d concept provides the user, without his undertaking a search, with pre-selected material in accordance with pre-selected user indicated preferences. The general idea is that search material is supplied to the user""s computer in background, without the user""s direct involvement. The user""s preferences guide selection of such material. The results of this selection are placed on the user""s desktop; hence, the names xe2x80x9cpushxe2x80x9d to indicate the absence of direct user interactivity, and xe2x80x9cactive desktopxe2x80x9d for the feature which dynamically updates the user""s desktop with the relevant material. In distinction to xe2x80x9cpushingxe2x80x9d, the classical mode whereby the user actively guides the search and directly navigates and chooses what material to download, is called xe2x80x9cpullingxe2x80x9d.
The amount of material which can be made available to the user in the context of an xe2x80x9cactive desktopxe2x80x9d is limited in practice by the storage capacity of the user""s computer. Even with the help of data compression, it is to be expected that the user""s active desktop cannot hold all of the material which is relevant to his search preferences. Some forms of content require only very modest amounts of storage. URL information and text-only hyper-text markup language (HTML) material, for example, occupy very little memory, and can be retrieved in bulk quantitiesxe2x80x94especially if the text is in summary form. However, when dealing with material containing graphics or multi-media content, the storage requirements are substantially greater and, as a result, the capacity for retrieval is more restricted.
Some form of compromise has to be made, either (1) by prioritizing what gets stored in the desktop, and using the prioritization to filter out whatever does not fit within the allotted space, or (2) by limiting the size of each object which is stored in the desktop, and throwing away parts of full files which exceed this size.
Data streaming over the Internet is known for transmitting image data progressively to a user in accordance with the available bandwidth along a data link leading to the user. Whereas streaming does overcome bandwidth limitations, it does not address issues of limitations on data storage capacity at a user""s site.
The present invention seeks to provide a method, system and devices for progressive encoding of digital data in an active desktop environment.
There is thus provided in accordance with a preferred embodiment of the present invention a system for transmitting digital data to an active desktop of a user with push pull functionality, the system comprising a digital data transmitter operative to transmit the digital data to the active desktop in blocks which are sequentially transmitted to the active desktop, each block being an incomplete collection of data and being viewable even when less than all of the blocks have been received, receipt of subsequent blocks by the receiver serving to cumulatively improve the quality of the digital data received by the receiver, at least one but not all of the blocks being transmitted to the active desktop in a push manner, and at least one of the remaining blocks being transmitted to the active desktop in a pull manner, when specifically actuated by the user.
There is also provided in accordance with a preferred embodiment of the present invention a system for transmitting digital data to an active desktop of a user with push pull functionality, the system comprising a digital data downloader operative to transmit a first portion of the digital data to the active desktop in a push mode, the first portion of the data being such as to enable all of the data to be accessible at at least a minimum quality prior to transmittal of all of the digital data to the active desktop, the digital downloader also being operative in a pull mode in response to user actuation for transmitting a second portion of the data, which when combined at the active desktop with the first portion, provides the user with the digital data at an enhanced quality as compared with the minimum quality.
There is also provided in accordance with a preferred embodiment of the present invention a system for transmitting digital data to an active desktop of a user with push functionality, the system comprising a digital data downloader operative to transmit a portion of a digital data file to the active desktop in a push mode, the portion of the data being such as to enable all of the digital data file to be accessible to the user at at least a minimum quality prior to transmittal of the remainder of the digital data file to the active desktop.
Further in accordance with a preferred embodiment of the present invention the digital data file is an image file and the portion of the data enables the entire image to be seen by a user at at least a minimum quality.
Still further in accordance with a preferred embodiment of the present invention the digital data file is an audio file and the portion of said data enables the entire audio file to be heard by a user at at least a minimum quality.
Moreover in accordance with a preferred embodiment of the present invention the digital data downloader is operative to transmit the portion of the digital data to the active desktop in response to receipt of a signal from the active desktop when the signal is generated without concurrent user actuation.
Additionally in accordance with a preferred embodiment of the present invention the digital data downloader is operative to transmit the portion of the digital data to the active desktop in response to an actuation input generated at the digital data downloader.
Preferably the digital data downloader is located at a server and is operative to transmit the portion of the digital data to the active desktop in response to an actuation input generated at the server.
The digital downloader may be operative when the active desktop is either on-line or off-line.
There is also provided in accordance with a preferred embodiment of the present invention a system for transmitting digital data to an active desktop of a user with pull functionality, following transmission of a first portion of digital data to the active desktop with a push functionality, thus providing a user with the digital data at at least a minimum quality, the system comprising a digital data downloader operative in a pull mode in response to user actuation for transmitting a second portion of the data, which when combined at the active desktop with the first portion, provides the user with the digital data at an enhanced quality as compared with the minimum quality.
There is also provided in accordance with a preferred embodiment of the present invention a method for transmitting digital data to an active desktop of a user with push pull functionality, the method comprising transmitting the digital data to the active desktop in blocks which are sequentially transmitted to the active desktop, each block being an incomplete collection of data and being viewable even when less than all of the blocks have been received, receipt of subsequent blocks by the receiver serving to cumulatively improve the quality of the digital data received by the receiver, at least one but not all of said blocks being transmitted to the active desktop in a push manner, and at least one of the remaining blocks being transmitted to the active desktop in a pull manner, when specifically actuated by the user.
There is also provided in accordance with a preferred embodiment of the present invention a method for transmitting digital data to an active desktop of a client computer with push pull functionality, comprising pushing a first portion of the digital data to the active desktop, the first portion of the data being such as to enable all of the data to be accessible at at least a minimum quality prior to transmittal of all of the digital data to said active desktop, pulling, in response to user actuation, a second portion of the data, and combining at the client computer the first portion and the second portion, thereby to provide the user with the digital data at an enhanced quality as compared with the minimum quality.
There is also provided in accordance with a preferred embodiment of the present invention a method for transmitting digital data to an active desktop of a client computer with push functionality, the method comprising pushing a portion of a digital data file to the active desktop, the portion of the data being such as to enable all of the digital data file to be accessible to the user at at least a minimum quality prior to transmittal of the remainder of the digital data file to the active desktop.
Further in accordance with a preferred embodiment of the present invention the digital data file is an image file and the portion of the data enables the entire image to be seen by a user at at least a minimum quality.
Still further in accordance with a preferred embodiment of the present invention the digital data file is an audio file and the portion of the data enables the entire audio file to be heard by a user at at least a minimum quality.
Moreover in accordance with a preferred embodiment of the present invention the digital data downloader is operative to transmit the portion of the digital data to the active desktop in response to receipt of a signal from the active desktop when the signal is generated without concurrent user actuation.
Additionally in accordance with a preferred embodiment of the present invention the pushing step transmits the portion of the digital data to the active desktop in response to an actuation input generated at the location where the pulling occurs stored.
Further in accordance with a preferred embodiment of the present invention the pushing step transmits the portion of the digital data to the active desktop in response to an actuation input generated at the server.
There is also provided in accordance with a preferred embodiment of the present invention a method for transmitting digital data to an active desktop of a user with pull functionality, following transmission of a first portion of digital data to the active desktop with a push functionality, thus providing a user with the digital data at at least a minimum quality, the method comprising pulling in response to user actuation at least a second portion of the data, and combining at the active desktop the second portion with the first portion, thereby providing the user with the digital data at an enhanced quality as compared with the minimum quality.
There is also provided in accordance with a preferred embodiment of the present invention a method for receiving digital data at an active desktop of a client computer having push pull functionality comprising receiving a first portion of the digital data transmitted in a push mode to the active desktop, the first portion of the data being such as to enable all of the data to be accessible at at least a minimum quality prior to transmittal of all of the digital data to the active desktop, pulling, in response to user actuation, a second portion of the data, and combining at the client computer the first portion and the second portion, thereby providing the user with the digital data at an enhanced quality as compared with the minimum quality.
There is also provided in accordance with a preferred embodiment of the present invention a system for receiving digital data at an active desktop of a client computer having push pull functionality comprising a pushed partial data receiver, receiving a first portion of the digital data transmitted in a push mode to the active desktop, the first portion of the data being such as to enable all of the data to be accessible at at least a minimum quality prior to transmittal of all of the digital data to the active desktop, a user actuated partial puller to pull, in response to user actuation, a second portion of the data, and a combiner, combining at the client computer the first portion and the second portion, thereby providing the user with the digital data at an enhanced quality as compared with the minimum quality.
The pushing step may take place when the active desktop is on-line or off-line.
The term xe2x80x9cqualityxe2x80x9d as used throughout the specification and claims is understood as referring to the degree to which a rendered version of an original is faithful to the original. Specifically, when dealing with images, quality refers to the degree to which the displayed image is faithful to the original image or scene. Normally this is expressed as the degree to which the approximation of pixel values in the displayed image approaches the correct pixel values in the original image or scene. Specifically, when dealing with audio, quality refers to the degree to which a played sound is faithful to the original sound.